Digital cameras and scanners include sensors which produce image data in a raw format. The raw format produced can vary from device to device. Basically, the raw format produced by an imaging device comprises pixel data arranged in a two-dimensional array for still images, and a sequence of such arrays for video. The pixel data characterizes each pixel using multispectral coding according to components of a color space that contribute to the sensed color or spectrum of each pixel. One common color space often applied in imaging devices, such as cameras and scanners, is known as the red/green/blue (RGB) space. Multispectral coding can also include data that relates to wavelengths of light that are outside the visible range, such as infrared or ultraviolet spectra.
Image capture devices can include sensors that are configured to sense each of the components of the multispectral coding for each pixel. For example, in an RGB space, a camera can include sensor arrays for each of the red, green and blue components of the color. Such sensor arrays can comprise so-called CMOS sensors or CCD sensors with corresponding filters that select the color, or spectrum, component to be detected by the sensors.
Also, a “mosaic” filter can be used with a single sensor array, so that each sensor in the array is arranged to detect a specific component of the multispectral coding. Postprocessing can be utilized to interpolate the data in order to provide all components for each pixel. Alternatively, each pixel could be characterized by a set of sensors in the array that provides data for each component.
A common type of mosaic filter used for visible imaging is known as the Bayer filter. The Bayer filter has a mosaic pattern in which, for example, every 2-by-2 set of sensors includes two green and one each of red and blue filters. This pattern takes advantage of the fact that human vision is more sensitive to green than the other components of the RGB color space. A process of interpolating the raw image data which has been gathered using a Bayer filter takes into account this characteristic when producing the final raw image data. This interpolation process is sometimes called demosaicing.
Imaging devices are configured to capture images of high resolution at a high rate of speed. Each captured image in high resolution includes a large number of pixels. Typically, the data from the sensors is read out of the array in a raster scan or row-by-row format that is transferred in serial fashion to a host processing system that can perform further digital signal processing on the raw data. The rate of image capture (e.g. frames per second) multiplied by the number of pixels per image, plus overhead data associated with each image, determines an image data rate at which the host processing system should be arranged to accept image data input.
Raw format image data are usually processed into formats according to industry standards, such as JPEG, which, among other functions, involves compressing the data. Other digital signal processes can be applied as well, including white balance processing, contrast processing, changing of the size or aspect ratio of the image, and so on. When the data are stored or transmitted for use by consumers, they are typically provided in the standard compressed file formats such as .tif or .jpg.
The process for converting the raw format data into one of the industry-standard formats, and other digital signal processing for the images, can be relatively slow compared to the rate at which the data are captured by the cameras or scanners.
As the resolution, or number of pixels per image, increases, the size of these raw format images is becoming very large. Also, as the technology for image sensors improves, the rate at which these raw format images are captured is increasing. Resources are required to move and store these large raw format images in a manner that accommodates the image capture rate. Thus, large high-speed buffers and multiple high-bandwidth data channels can be required to keep up with the imaging devices. These resources consume power during operation, reducing the battery life of portable imaging devices. Also, these resources increase the component costs for image processing systems.
Thus, transferring and storing raw format images in preparation for or during further digital signal processing of the images is becoming resource-intensive, increasing the power consumption and driving up the costs.
It is therefore desirable to provide a technology that reduces the resources required and reduces the time required to perform raw image data capture, and raw image data processing.